package com.zhang.framelib.common;

import java.math.BigDecimal;
import java.util.Date;
import java.util.Properties;

import com.zhang.framelib.util.ConfigUtils;
import com.zhang.framelib.util.DateUtils;

/**
 * 
 * Title:CommonConstants   所有程序都可能会使用的常量
 * Description:
 * @Edit_Description:cuishuaiming
 * @version:zhang-framelib 1.0
 */
public class CommonConstants {
	
	/** 系统资源文件 .*/
    public static final Properties SYSTEM_PROPS = ConfigUtils.getPropertiesFile("conf/system.properties");

    /** 提示信息资源文件. */
    private static final Properties MESSAGE_PROPS = ConfigUtils.getPropertiesFile("conf/messages.properties");

    public static String getMessage(String key) {
        return MESSAGE_PROPS.getProperty(key);
    }

    public static String getSystemMessage(String key) {
        return SYSTEM_PROPS.getProperty(key);
    }

    /** 操作标示成功.*/
    public static final int RETURN_CODE_SUCCESS = 1;

    /** 操作标示失败. */
    public static final int RETURN_CODE_FAIL = 0;

    /** 返回标示 .*/
    public static final String RET = "retCode";

    /** 返回标示 .*/
    public static final String MSG = "msg";

    /** String类型默认值. */
    public static final String STRING_DEF = "";

    /** Int类型默认值 .*/
    public static final Integer INTEGER_DEF = -1;

    /** 顺序默认值 .*/
    public static final Integer PRIORITY_DEF = 10000;

    /** 已删除默认值 .*/
    public static final int IS_DELETE_TRUE = 1;

    /** 未删除默认值 .*/
    public static final int IS_DELETE_FALSE = 0;

    /** 有效标识 .*/
    public static final Integer IS_AVLID_TRUE = 1;

    /** 无效标识 .*/
    public static final Integer IS_AVLID_FALSE = 0;

    /** BigDecimal类型默认值. */
    public static final BigDecimal DECIMAL_DEF = new BigDecimal("0");

    /** Date类型默认 .*/
    public static final Date DATE_DEF = DateUtils.parseDate("9999-12-31 23:59:59", DateUtils.dateTimeFormat);

    /** 产品互斥开关（1 验证互斥 0 不验证互斥） .*/
    public static final String SWITCH_TRUE = "1";

    /** 参数传递错误 .*/
    public static final Integer PARAM_ERROR = 22002;

    /** 接口调用失败 .*/
    public static final Integer METHOD_NOT_EXIST = 22001;

    /** 主产品标示 .**/
    public static final Integer MAIN_PRODUCT = 1;
    /** 增值产品产品标示. **/
    public static final Integer APPRECIATION_PRODUCT = 2;

    /** BigDecimal类型无效值. */
    public static final BigDecimal DECIMAL_ERR = new BigDecimal("-1");

}
